window.onload = function() {
  var loginName = document.getElementsByClassName('username')[0]
  var loginpass = document.getElementsByClassName('password')[0]
  var loginRePass = document.getElementsByClassName('repassword')[0]
  var signUp = document.getElementsByClassName('signUp')[0]
  var signIn = document.getElementsByClassName('signIn')[0]
  var userInfo = document.getElementsByClassName('userInfo')[0]
  var userword = document.getElementsByClassName('userword')[0]

  // 注册新用户
  signUp.addEventListener('click', function() {
    Ajax.post(
      '/api/user/register',
      {
        username: loginName.value,
        password: loginpass.value,
        repassword: loginRePass.value
      },
      function(res) {
        console.log(res)
      }
    )
  })
  signIn.addEventListener('click', function() {
    console.log(loginName.value)
  })

  // 登录用户
}

/**
 * 原生实现ajax
 */
var Ajax = {
  get: function(url, fn) {
    // XMLHttpRequest对象用于在后台与服务器交换数据
    var xhr = new XMLHttpRequest()
    xhr.open('GET', url, true)
    xhr.onreadystatechange = function() {
      // readyState == 4说明请求已完成
      if ((xhr.readyState == 4 && xhr.status == 200) || xhr.status == 304) {
        // 从服务器获得数据
        fn.call(this, xhr.responseText)
      }
    }
    xhr.send()
  },
  // datat应为'a=a1&b=b1'这种字符串格式，在jq里如果data为对象会自动将对象转成这种字符串格式
  post: function(url, data, fn) {
    var xhr = new XMLHttpRequest()
    xhr.open('POST', url, true)
    // 添加http头，发送信息至服务器时内容编码类型
    xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
    xhr.onreadystatechange = function() {
      if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 304)) {
        fn.call(this, xhr.responseText)
      }
    }

    xhr.send(getParmeter(data))
  }
}

/**
 * 工具函数
 */
function getParmeter(data) {
  var result = ''
  for (var key in data) {
    result = result + key + '=' + data[key] + '&'
  }
  /*将结果最后多余的&截取掉*/
  return result.slice(0, -1)
}
